﻿#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define q 100

int g;
int h = 30;
static int i;
static int j = 40;

//main105：数据存储范围
int main105()
{
	int a = 10;
	static int b;
	static int c = 20;

	int k[10];
	int l[10] = { 0 };

	int* m;
	int* n = &a;

	char ch[] = "true string";
	char* p = "hello world";

	const int o = 50;

	printf("1.初始化的局部变量a的地址：%p\n", &a);//0096FE04
	printf("2.未初始化的静态局部变量b的地址：%p\n", &b);//00B59174
	printf("3.初始化的静态局部变量c的地址：%p\n", &c);//00B5900C

	printf("4.未初始化的全局变量g的地址：%p\n", &g);//00B595D0
	printf("5.初始化的全局变量h的地址：%p\n", &h);//00B59004
	printf("6.未初始化的静态全局变量i的地址：%p\n", &i);//00B59170
	printf("7.初始化的静态全局变量j的地址：%p\n", &j);//00B59008

	printf("8.未初始化的数组k的地址：%p\n", k);//0096FDD4
	printf("9.初始化的数组l的地址：%p\n", l);//0096FDA4

	printf("10.未初始化的指针m的地址：%p\n", &m);//0096FD98
	printf("11.初始化的指针n的地址：%p\n", &n);//0096FD8C

	printf("12.初始化的字符数组ch的地址：%p\n", ch);//0096FD78
	printf("13.初始化的字符串常量p的地址：%p\n", p);//00B52C48
	printf("14.常量o的地址：%p\n", &o);//00F3FB64

	//16.不能这么写define定义的常量q，&q<==>&100
	//printf("15.define定义的常量q的地址：%p\n", &q);

	system("pause");
	return EXIT_SUCCESS;
}